Databases play an increasingly important role in modern life and business. Businesses have come to use databases in any number of different contexts. Human resource departments use databases to store data describing employees, including, compensation information, address information, etc. Sales and marketing departments use customer relationship management (CRM) databases to store data describing customers including, for example, purchases, product preferences, etc. Information technology (IT) departments use databases for many purposes including, for example, storing data describing computer devices, software applications, etc. Consumers too are becoming increasingly dependent on databases. For example, a typical computer device user may use a media application that maintains a database of available media files, a calendar or e-mail application that maintains a database of personal and/or business contacts, a financial application that maintains a database of financial records, and others.
Database clients access and modify data stored in a database by submitting queries to a database management system (DBMS) associated with the database. The amount of time necessary for the DBMS to reply to the query can depend on various factors including, for example, the type of query, the size of the database, the number of clients querying the database, and the efficiency of query processing.